<?php

require_once 'Osml/Application/Bootstrap.php';

class Bootstrap extends Osml_Application_Bootstrap
{

    protected function _initAutoload ()
    {
        parent::_initAutoload();
        $this->_addModuleAutoloader(APPLICATION_PATH . '/modules', 'Front');
        $this->_addModuleAutoloader(APPLICATION_PATH . '/modules', 'Back');
        return Zend_Loader_Autoloader::getInstance();
    }

    protected function _initPaginator ()
    {
        Zend_Paginator::setDefaultScrollingStyle('Sliding');
        Zend_View_Helper_PaginationControl::setDefaultViewPartial(
                'pagination.phtml');
    }

    protected function _initPlugins ()
    {
        $resource = $this->getPluginResource('multidb');
        $resource->init();
        $acl = new Osml_Acl();
        Zend_Registry::set("acl", $acl);
        
        // enregistrement du plugin de manière à ce qu'il soit exécuté
        Zend_Controller_Front::getInstance()->registerPlugin(
                new Osml_Application_Plugin_Acces());
        
        // permet de définir l'acl par défaut à l'aide de vue, de cette manière
        // l'ACL est accessible dans les vues
        Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl($acl);
    }
}